import java.util.Arrays;

public class java2024_5_8 {
    public static void main(String[] args) {
        //数组的创建
        //动态初始化数组
//        int[] arr = new int[10];
//        for (int i = 0; i < 10; i++) {
//            arr[i] = i+1;
//        }
//        System.out.println(Arrays.toString(arr));

        //静态初始化数组
//        int[] arr = new int[]{1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
//        for (int ret : arr) {
//            System.out.print(ret + " ");
//        }

        //动态初始化数组简化版
//        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
//        for (int i = 0; i < arr.length; i++) {
//            System.out.print(arr[i] + " ");
//        }

//        int[] arr;
//        arr = new int[]{1, 2, 3, 4, 5};
//        for (int number : arr) {
//            System.out.print(number + " ");
//        }

        //数组的遍历
//        char[] arr = {'a', 'b', 'c', 'd', 'e', 'f'};
//        for (int i = 0; i < arr.length; i++) {
//            System.out.print(arr[i] + " ");
//        }

//        for(char ch:arr){
//            System.out.print(ch+" ");
//        }

//        System.out.println(Arrays.toString(arr));

//        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
//        //就是让arr2指向arr的数组；
//        int[] arr2 = arr;
//        for (int i = 0; i < arr2.length; i++) {
//            System.out.print(arr[i]+" ");
//        }

        //有关数组的常用API
//        int[] arr = {2, 4, 1, 5, 3, 6, 7, 9, 8, 10};
        //二分查找
//        int index = Arrays.binarySearch(arr, 0,7,7);
//        System.out.println(index);

//        int[] arr = {2, 4, 1, 5, 3, 6, 7, 9, 8, 10};
        //数组的拷贝
//        int[] arr2 = Arrays.copyOf(arr, arr.length * 2);
//        for (int i = 0; i < arr2.length; i++) {
//            System.out.print(arr[i]+" ");
//        }

        //拷贝数组的一段
//        int[] ret = Arrays.copyOfRange(arr,0,3);
//        for (int i = 0; i < ret.length; i++) {
//            System.out.println(ret[i]);
//        }

//        int[] arr1 = {1,2,3,4,5,6,7,8,9,10};
//        int[] arr2 = {1,2,3,4,5,6,8,9,10};
//        boolean ret = Arrays.equals(arr1, arr2);
//        System.out.println(ret);

//        int[] arr = new int[10];
//        Arrays.fill(arr, 10);
//        System.out.println(Arrays.toString(arr));

//        int[] arr = {2, 1, 4, 5, 3, 6, 9, 7, 8, 10};
//        Arrays.sort(arr);
//        System.out.println(Arrays.toString(arr));

//        int[] arr = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
//        int[] ret = new int[arr.length];
//        //比copyOf块了一点点
//        System.arraycopy(arr,0,ret,0,arr.length);
//        for(int number:ret){
//            System.out.println(number);
//        }

        //二维数组
//        int[][] array = {{1, 2, 3, 4}, {5, 6, 7, 8}, {1}, {3, 4, 5, 6, 7, 8, 9, 10}};
//        for (int i = 0; i < array.length; i++) {
//            for (int j = 0; j < array[i].length; j++) {
//                System.out.print(array[i][j] + " ");
//            }
//            System.out.println();
//        }

//        for (int[] ret : array) {
//            for (int number : ret) {
//                System.out.print(number + " ");
//            }
//            System.out.println();
//        }

//        System.out.println(Arrays.toString(array));

//        System.out.println(Arrays.deepToString(array));
    }

}
